1. Field of the Invention
This invention relates to a packet switch and in particular to a packet switch in communication networks for switching variable length packets such as typified by IP (Internet protocol) packets.
2. Description of Related Art
In recent years, in Internet Protocol (-hereafter referred to as IP), message transfer or forwarding is performed by packets called IP datagrams (hereafter referred to as IP packets). In a conventional IP network, node equipment such as a router installed within the network, transfers a received packet to adjacent node equipment along a selected path according to the respective destination addresses in the order that the packet was received. The IP network makes a best possible effort to transfer the message to the destination terminal but cannot guarantee factors in communications performance such as delay time in the message transfer.
In each node within the IP network, the IP headers of the packets received from the input line are analyzed by the respective input line interfaces, and the output line interface to which this packet must be forwarded is identified according to the routing information contained in the IP header, and these received packets are relayed in sequence to one of output line interfaces corresponding to respective destinations by way of the switching unit.
There has been proposed a node equipment to forward IP packets at high speed, in a paper entitled, “A 50-Gb/s IP Router” (Craig Partridge et. al., IEEE/ACM TRANSACTIONS ON NETWORKING, Vol. 6, No. 3, June 1998).
This node equipment has a configuration in which a plurality of line cards (line boards) supporting one or more of network interfaces and a forwarding engine cards provided with a routing table are coupled to point-to-point switches typified, for example, by crossbar switches. Each of said line cards transmits a data block including the header of the received packet to the forwarding engine, the remainder of the packet remains on the inbound line card. A data block containing new header information rewritten by the forwarding engine is sent back to the inbound line card, and each inbound line card forwards the data block containing the new header information and data blocks containing the remainder of the received packet to the outbound line card for transmission.
The above paper discloses that each of inbound line cards segments the received packet up into linked pages (data blocks) of 64 byte units, and each of the outbound line cards assembles these pages into a linked list for each packet, and delivers the assembled packet to a QoS processor. The above paper further discloses that the QoS processor then places the packet into an appropriate position within a transmission queue based on the packet length, destination and flow identifiers specified by the forwarding engine, and that the packet is discarded without queuing during the occurrence of congestion.
Along with the spread of the Internet, increasing demands are being in the support of real time communication service typified by audio and video as well as communications services for data information handled by a conventional computer. However, the relay delay time for the packet received at a node must be shortened as much as possible in order to provide effective support in terms of real time information communications.
However, in node equipment of the conventional art, once the forwarding operation of packet data to an output line interface begins, other IP packets cannot be forwarded to the same output line interface until the forwarding of the previous packet has been completed, because the forwarding operation of data from each input line interface to a switching unit or to one of the output line interfaces is performed in units of variable length packets. In the same way, when once the input line interface begins the data transfer of one IP packet, until forwarding of all data for that packet has been completed, the interface cannot switch the transfer object to the other IP packets that need to be sent.
Consequently, in conventional node equipment, while an IP packet from a data communication service which does not have a problem with delay time is being forwarded to one output line interface, another IP packet, even if it is from a communication service for real time information that needs to be forwarded to the same output line interface, has to wait until forwarding of the preceding IP packet is completed. In particular, when a large data length of IP packet is being forwarded, there creates the problem of a large relay delay for subsequent packets.
In the above mentioned IEEE paper, the packet was segmented into pages of 64 bytes each at the inbound line card and then output to the switch. However, since the inbound line card, prior to forwarding a packet, must negotiate with the outbound line card by way of a switch allocator in order to start the forwarding operation after confirming that the outbound line card has acknowledged the receiving of the packet. Once the forwarding of page data for one packet starts, this operation continues without any interruption. Therefore, the switch in effect, relays the data in packet units.
Further in the above mentioned paper, the packet is discarded by the QoS processor in the outbound line card when the output queue is congested so controlling operation to avoid congestion is a problem.